home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Users Group Library 1996 July / C-C++ Users Group Library July 1996.iso / vol_400 / 422_04 / read.me < prev    next >
Text File  |  1994-03-20  |  9KB  |  177 lines

  1.                           * The DDS MICRO-C Compiler *
  2.     
  3.        DDS MICRO-C is a tiny compiler for the  'C'  language.  It  has  been
  4.     designed to be  VERY  portable,  and  can  be  moved  between  different
  5.     processors and operating systems with little difficulty.
  6.     
  7.        MICRO-C should not be  compared  to  other  popular  P.C.  compilers,
  8.     because it is intended for an  entirely  different  purpose.  They  are,
  9.     expensive, and dedicated to specific computer environments.  MICRO-C  is
  10.     tiny (it can be made to run in less that 32K), and allows you to take it
  11.     anywhere you want.
  12.     
  13.        The complete MICRO-C source package  includes  all  source  code  and
  14.     support files you need to port the  compiler  to  any  environment.  The
  15.     documentation  contains  detailed  information  on  writing   new   code
  16.     generators for other  processors.  We  also  have  code  generators  and
  17.     complete development  packages  available  for  a  number  of  processor
  18.     families, including: 68HC08, 6809, 68HC11, 68HC16,  8051/52,  8080/8085,
  19.     80x86 and 8096. See the included CATALOG file for more information.
  20.     
  21.        MICRO-C is also  an  excellent  learning  tool.  Not  only  does  the
  22.     complete, well documented source code for  the  compiler  and  utilities
  23.     give you the opportunity to explore and understand those  programs,  the
  24.     source code for the library gives you information on all kinds of system
  25.     programming, such as:
  26.     
  27.                 - DOS and BIOS services
  28.                 - Video screen and windowing functions
  29.                 - Interrupt driven serial communications
  30.                 - Terminate and Stay Resident (TSR)
  31.                 - Lots MORE (Over 170 functions)
  32.     
  33.        For more information on the compiler, see the file MC.DOC. This  file
  34.     is quite large, make sure you are in no hurry before printing  it  on  a
  35.     slow printer. The table of contents pages are printed last,  and  should
  36.     be inserted between the title page and page 1.
  37.     
  38.        MICRO-C is no longer  "User  supported  Software"  (shareware).  This
  39.     archive contains a "DEMO" package, consisting of the IBM PC  executables
  40.     and support files. If you like what you see,  and  wish  to  obtain  the
  41.     complete package with  source  code  for  the  compiler,  libraries  and
  42.     utilities, Fill out the order form in the  enclosed  CATALOG  file,  and
  43.     send it along with the required payment to:
  44.     
  45.                 Dunfield Development Systems
  46.                 P.O. Box 31044
  47.                 Nepean, Ontario (Canada)
  48.                 K2B 8S8
  49.                 Tel: (613) 256-5820         BBS: Dial '2' at voice prompt
  50.                 Fax: (613) 256-5821
  51.                               * Getting Started *
  52.     
  53.        NOTE: This archive no longer contains example  programs.  We  have  a
  54.     companion archive containing over 70 useful examples.  If  you  did  not
  55.     receive this archive, you should  contact  the  source  from  which  you
  56.     received this file, and arrange to obtain it.
  57.     
  58.        To install MICRO-C on a hard drive, simply  create  a  directory  and
  59.     unpack this archive into it. The directory  "\MC"  is  preferred,  since
  60.     some of the utilities assume this is the MICRO-C home  directory  unless
  61.     told otherwise.
  62.     
  63.        The companion "example program" archive should be dearchived into  an
  64.     "examples" subdirectory. The archive contains subdirectories, so be sure
  65.     to use any dearchiver options necessary to preserve them. (For  PKUNZIP,
  66.     use '-d').
  67.     
  68.        Once you have installed the system, refer  to  the  section  entitled
  69.     "THE COMMAND CO-ORDINATOR" in the MC.DOC file for information on how  to
  70.     compile programs using the 'CC' command. You should either  include  the
  71.     MICRO-C directory "\MC" in your PATH, or  copy  the  CC.COM  file  to  a
  72.     directory which is already in your PATH. Also, make sure that  the  MASM
  73.     and LINK commands are available on your  system.  The  MCDIR  and  MCTMP
  74.     environment variables should be set up  as  described  in  the  document
  75.     before attempting to use CC.
  76.                             * MICRO-C under MS-DOS *
  77.                             * Implementation notes *
  78.     
  79.        This 8086 MS-DOS implementation of the compiler produces code for the
  80.     Microsoft MASM (or compatible) assembler in either  the  TINY  or  SMALL
  81.     models. The LINK utility is required to create an EXE  file.  NOTE  that
  82.     programs produced for the TINY  model  will  execute  as  ".EXE"  files,
  83.     however, due to PSP being outside of the data/code segment, command line
  84.     parameters are only available when the program is  converted  to  ".COM"
  85.     format with the supplied EXE2BIN utility.
  86.     
  87.        The memory model to use is selected by  the  runtime  library,  which
  88.     MUST BE FIRST in the list of object files  passed  to  the  linker.  The
  89.     PC86RL_T.OBJ file distributed with MICRO-C is configured  for  the  TINY
  90.     model, and the PC86RL_S.OBJ file is configured for the SMALL model.
  91.     
  92.        The variables ARGC and ARGV (Note  capitals)  are  available  in  the
  93.     runtime  library  module  for  use  as  EXTERNAL  references  from  your
  94.     programs. This makes it easy for  a  function  other  than  'main()'  to
  95.     access the programs arguments.  The  variables  PSP  and  ENV  are  also
  96.     available to  determine  the  PROGRAM  SEGMENT  PREFIX  and  ENVIRONMENT
  97.     segments.
  98.     
  99.             ie:     extern int ARGC;        /* Count of arguments */
  100.                     extern char *ARGV[];    /* Array of ptrs to args */
  101.                     extern int PSP;         /* PSP segment */
  102.                     extern int ENV;         /* Environment segment */
  103.     
  104.        If you are using a DOS version prior to  3.0,  the  argv[0]  (program
  105.     name) argument will not work correctly.
  106.     
  107.        MICRO-C has been tested with these PC assemblers:
  108.     
  109.             MASM 3.0    - Works OK
  110.             MASM 4.0    - Works OK
  111.             MASM 5.1    - Works OK
  112.             TASM 1.0    - Works OK
  113.             TASM 2.01   - Works OK
  114.             A86 3.21    - DOES NOT WORK (not fully MASM compatible)
  115.     
  116.        NOTE: If your versions of MASM/LINK (or  compatible)  does  not  work
  117.     with the command lines hard coded in the CC command, you can compile by:
  118.     
  119.         1) Modify LC.BAT to use an acceptable LINK command.
  120.         1) Compile your program to ASM with the '-a' switch.
  121.         3) Assemble with your assembler
  122.         4) Link with library using LC.BAT
  123.     
  124.        The source code to the CC command is provided in the file  CC.C,  see
  125.     the comments contained within for information on altering CC to suit you
  126.     assembler and linker.
  127.                            * Files in this archive *
  128.     
  129.             READ.ME         - This file
  130.             CATALOG         - Catalog of available software
  131.             MC.DOC          - MICRO-C Technical Documentation
  132.             LIBRARY.DOC     - MICRO-C Library Reference
  133.             MC-VS-SC.DOC    - Comparison of MICRO-C and SMALL-C
  134.             CINTRO.DOC      - Introduction to 'C'
  135.             CC.COM          - Command Co-ordinator
  136.             MCP.COM         - Preprocessor
  137.             MCC.COM         - PC/80x86 Compiler
  138.             MCO.COM         - PC/80x86 Optimizer
  139.             EXE2BIN.COM     - Executable to Binary convertor
  140.             LC.BAT          - Batch file to link multiple objects
  141.             PC86RL_T.OBJ    - Tiny model runtime library
  142.             PC86RL_S.OBJ    - Small model runtime library
  143.             MCLIB.LIB       - MICRO-C Function Library
  144.             *.h             - Header files as described in the documentation
  145.             CC.C            - Source code to CC command
  146.     
  147.        All of the source and header files  ('.c',  and  '.h')  were  written
  148.     using tab stops every 4 characters, which is much  more  convenient  for
  149.     'C' development than the usual MS-DOS tab stops of every  8  characters.
  150.     Source for a program called  "type4.c"  is